﻿#region Using Statements
using GameBase.Inputs;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Input;
#endregion

#if DEBUG
namespace StarFox.Testing
{
    /// <summary>
    /// Provides functionality needed for testing input management.
    /// <para>Use this class for testing purposes only.</para>
    /// </summary>
    public class TestInput
    {
        #region Fields

        InputState input;

        #endregion

        #region Constructor

        /// <summary>
        /// Initializes a new instance of this class.
        /// </summary>
        /// <param name="input">Basic input management functions.</param>
        public TestInput(InputState input)
        {
            this.input = input;
        }

        #endregion

        #region Testing

        /// <summary>
        /// Checks for a "show test information" input action.
        /// </summary>
        /// <param name="playerIndex">Specifies which player to read input from.</param>
        /// <returns>Input action performed.</returns>
        public bool IsShowTestInfo(PlayerIndex playerIndex)
        {
            bool keyboard = input.IsKeyPress(Keys.Tab, true);

            return keyboard;
        }

        /// <summary>
        /// Checks for a "show post-processing buffer " input action.
        /// </summary>
        /// <param name="playerIndex">Specifies which player to read input from.</param>
        /// <returns>Input action performed.</returns>
        public bool IsShowPostProcBuffer(PlayerIndex playerIndex)
        {
            bool keyboard = input.IsKeyPress(Keys.LeftControl, true);

            return keyboard;
        }

        #endregion
    }
}
#endif